Parametric Polymorphism and Operational Improvement
نویسنده
چکیده
Parametricity, in both operational and denotational forms, has long been a useful tool for reasoning about program correctness. However, there is as yet no comparable technique for reasoning about program improvement, that is, when one program uses fewer resources than another. Existing theories of parametricity cannot be used to address this problem as they are agnostic with regard to resource usage. This article addresses this problem by presenting a new operational theory of parametricity that is sensitive to time costs, which can be used to reason about time improvement properties. We demonstrate the applicability of our theory by showing how it can be used to prove that a number of well-known program fusion techniques are time improvements, including fixed point fusion, map fusion and short cut fusion.
منابع مشابه
Thermodynamic Assessment and Parametric Study of a Supercritical Thermal Power Plant
A thermodynamic analysis of an operational 315 MW supercritical steam power plant (SPP) using the actual data is performed to assess the plant performance and identify the sites of energy losses and exergy destructions in each component of the plant. Various performance parameters such as component energy and exergy efficiencies, energy loss rate, exergy destruction rate, improvement potential ...
متن کاملFrom parametric polymorphism to models of polymorphic FPC
This paper shows how PILLY (Polymorphic Intuitionistic / Linear Lambda calculus with a fixed point combinator Y ) with parametric polymorphism can be used as a metalanguage for domain theory, as originally suggested by Plotkin more than a decade ago. Using Plotkin’s encodings of recursive types in PILLY we show how parametric models of PILLY give rise to models of FPC, a simply typed lambda cal...
متن کاملOn the (un)reality of Virtual Types Didier R Emy and J Er^ Ome Vouillon
We show, mostly through detailed examples, that programming patterns known to involve the notion of virtual types can be implemented directly and concisely using parametric poly-morphism. A signiicant improvement we make over previous approaches is to allow related classes to be deened independently. This solution is more exible, more general, and we believe, simpler than other type-safe soluti...
متن کاملKinded Parameteric Overloading
The combination of overloading and parametric polymorphism has received some attention in the functional programming community. The main approach has been that of Haskell type classes. An approach to the type-checking and semantics of parametric overloading is presented, based on using structured kinds to constrain type variables. Open kinds constrain type variables by sets of operations and ar...
متن کاملParametric polymorphism and operational equivalence
Studies of the mathematical properties of impredicative polymorphic types have for the most part focused on the polymorphic lambda calculus of Girard-Reynolds, which is a calculus of total polymorphic functions. This paper considers polymorphic types from a functional programming perspective, where the partialness arising from the presence of fixpoint recursion complicates the nature of potenti...
متن کامل